package com.hippo4j.plugin.manager;

import com.hippo4j.plugin.ExecuteAwarePlugin;
import com.hippo4j.plugin.RejectAwarePlugin;
import com.hippo4j.plugin.ShutdownAwarePlugin;
import com.hippo4j.plugin.ThreadPoolPlugin;

import java.util.Collection;

public interface ThreadPoolPluginManager {

    void registerPlugin(ThreadPoolPlugin plugin);

    Collection<ExecuteAwarePlugin> getExecuteAwarePluginList();

    Collection<ShutdownAwarePlugin> getShutdownAwarePluginList();

    Collection<RejectAwarePlugin> getRejectAwarePluginList();
}
